The increasing spread of computer networks in business environments has led to a whole new set of issues regarding such networks. One main concern is the reliability and, therefore, the performance of such networks. It is currently a common practise to have multiple connections coming into and leading out of specific networks, so that multiple networks are be interconnected, with data from one network transiting through multiple other networks before arriving at its ultimate destination. One problem with this scenario is that, in transiting through a network, data may be corrupted thereby introducing errors in the data. Unfortunately, the error may have occurred in any one of the networks that the data has transited. It would be advantageous if it can be known in which intermediate network the corruption occurred.
To help in meeting the above need, such intermediate networks can be monitored for quality control. Essentially, this requires that data entering the network is checked as it enters the network and the same data is also checked as it exits the network. The two checks are then compared to determine if there is a difference between the two. If there is a difference, then errors have been introduced by the intermediate network. This data integrity check is necessary in many applications as it would be financially and commercially advantageous for network service providers to ensure that their segment on the network does not produce errors in data passing through it.
To this end, the International Telecommunications Union (ITU) has introduced the G.709 standard for “Interface for the Optical Transport Network (OTN)”. This standard is a set of recommendations by the ITU. It provides for data encapsulation and for specific sections in that encapsulation for such data integrity checks. The recommendations provide for a specific frame structure that has a specific header with section in the header specifically tasked for containing error correction data.
One of these pieces of data for performance measurement is termed the trail trace identifier or TTI. This is defined to transport a 64 byte message that contains a source and a destination identifier used for routing the frame signal through the network. The TTI functionality allows for testing whether frames reach their desired output ports in the network.
For in service performance monitoring, the ITU G.709 recommendations use bit interleaved parity (BIP). Essentially, what this means is that for a specific group of data bits carried by the frame, a specific bit value is calculated and this bit value is stored within the frame carrying the data. Thus, a record of the data carried by the frame is also carried for error correction purposes. Upon exiting the network, a similar operation occurs wherein for each set group of data bits in the payload of the frame, a similar bit value is calculated. This bit value is then compared with the corresponding bit value carried by the frame. If these two bit values match, then the presumption is that no errors were introduced in the frame. However, if the two bit values do not agree, then the presumption is that an error has been introduced by the network that the data frame has just passed through.
Another feature of the G.709 recommendations is the provision for a four bit backward error indicator (BEI) that is used to signal upstream networks as to the number of bit errors per block that have been identified as errors by previous networks. Essentially what this means is that if errors have been detected using the BIP function, the number of bit errors per block is recorded using the BEI. Thus, if a frame enters a network, the network that is being entered knows how many errors are already existent within the frame. This definition for REI is for the SONET (Synchronous Optical Network) standard. For the SDH (Synchronous Digital Hierarchy) standard, the BEI is defined as the number of bit interleaved blocks that have errors.
Another feature of the G.709 recommendations is the provision for a backward defect indication (BDI). This is defined to convey the signal fail status determined in a section termination synchronization function in the upstream direction. This indication is set to one to indicate a defect otherwise it is set to zero. It should be noted that the BDI is a single bit.
It should also be noted that the G.709 recommendations provide for a maximum of six connections to be monitored through each entry or exit point. Thus, up to six connections may be entering through a specific entry point of a network. Conversely, up to six connections may be exiting from a network at an exit point. While more connections are possible, the recommendations only allow for up to six connections to be simultaneously monitored. It is this tandem connection monitoring that requires processing. Each connection that enters a specific entry point of a network must have its data frames checked for its BIP and the errors that the data frame may have. When that data frame leaves the network, it must again be monitored and checked for any errors that may have been introduced by the network. If such errors have been introduced then this must be reflected in the appropriate section in the frame.
Currently, the only solutions to monitoring the data frames entering and exiting a network are software based. However, such solutions are problematic as large amounts of processing power are required to accomplish this. Furthermore, the amount of bookkeeping that is required to monitor the connection entering and exiting a network can be extensive especially if implemented in software. Another major shortcoming of a software implementation is that software cannot be fast enough to process the data in real-time.
What is therefore required based on the above, is a hardware solution to implementing the G.709 recommendations. Such a hardware based solution would not only increase the speed required for processing the data frames through a network, it would also allow for easier implementation, as each hardware solution can be installed at each entry and exit point of a network.
It should be noted that the term data transmission unit (DTU) will be used in a generic sense throughout this document to mean units through which digital data is transmitted from one point in a network to another. Thus, such units may take the form of packets, cells, frames, or any other unit as long as digital data is encapsulated within the unit. Thus, the term DTU is applicable to any and all packets and frames that implement specific protocols, standards or transmission schemes. It should also be noted that the term digital data will be used throughout this document to encompass all manner of voice, multimedia content, video, binary data or any other form of data or information that has been digitized and that is transmitted from one point in a network to another as a payload of a data transmission unit.